﻿using System;
using System.Collections.Generic;
using System.Linq;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Audio;
using Microsoft.Xna.Framework.Content;
using Microsoft.Xna.Framework.GamerServices;
using Microsoft.Xna.Framework.Graphics;
using Microsoft.Xna.Framework.Input;
using Microsoft.Xna.Framework.Media;
using Microsoft.Xna.Framework.Net;
using Microsoft.Xna.Framework.Storage;


namespace GameEngine.Scenes
{
    public class Scene
    {
        #region Attributes
        public bool isPopUp { get; set; }
        public bool doesHalt { get; set; }
        public bool obscureBackScenes { get; set; }
        public Vector2 sceneResolution { get; set; }
        public Vector2 position{ get; set; }
        public Background background { get; set; }
        public ActorManager actorManager { get; set; }
        #endregion

        #region Constructors
        public Scene(bool isPopUp, bool doesHalt, ActorManager am) {
            this.isPopUp = isPopUp;
            this.doesHalt = doesHalt;
            actorManager = am;
        }
        public Scene(bool isPopUp, bool doesHalt) :
            this(isPopUp,doesHalt,new ActorManager()){
        }
        public Scene():
        this(false,false){
        }
        #endregion

        #region Functionality
        public virtual void LoadContent() { }
        public virtual void UnloadContent() { }
        public virtual void update(GameTime gameTime) { }
        public virtual void draw(SpriteBatch sb) { }
        public virtual void handleInput() { }
        #endregion
    }
}
